Skip to content

Restore glossary contents, keyboard tabs and source links - #148

Merged
tony merged 15 commits into
mainfrom
docs-p0-wave-20261014
Oct 17, 2026
Merged

tony merged 15 commits into
mainfrom
docs-p0-wave-20261014

Conversation

@tony

@tony tony commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Core API glossaries gain contents navigation and heading permalinks from each port’s native definitions. Shared documentation contents stay available between the sidebar and wide contents breakpoints, with keyboard dismissal, focus return and resize cleanup. Package-manager tabs support Home and End alongside arrow keys.

Generated JVM source auditing validates embedded text and declaration locations, and ordinary MCP catalog metadata matches its pinned API source. The test-only Happy DOM annotations preserve byte-identical emitted JavaScript.

Validation: pnpm test passes at this exact commit in 57.05 seconds under the unchanged 60-second cap, including type-check, focused suites, generated-data/link checks and the fresh-source browser sample. Source changes have independent reviews; existing source-only skips remain explicit.

Hosted CI for this head and focused glossary/contents browser, assembly and public acceptance remain pending.

tony added 14 commits October 16, 2026 19:15
why: Generated declarations link to embedded raw source routes, so
requiring their paths in Git rejects valid JVM source links.

what:
- Validate embedded source text, canonical paths and line bounds
- Retain commit, public remote, path and line checks for Git links
why: TypeScript and Julia catalog source links no longer match the
reviewed API model pins, so the ordinary freshness check fails.

what:
- Regenerate advertised revisions and mapped registration lines.
- Preserve captured runtime contracts and use generator port ordering.

Validation: unchanged ordinary generator fails before and passes after
with all ten genuine captured-source checkouts. Runtime capture unchanged.
why: Core glossaries omit page contents and both glossary layout paths
omit heading permalinks.

what:
- Guard actual core and DocsLayout output with strict expected failures
- Retain native catalogs, contextual targets and the API browse tree
why: Core glossaries had no owner-derived page navigation, and the
shared glossary headings omitted permalink controls.

what:
- Derive both layout outlets from the filtered native glossary metadata
- Keep wide contents and native narrow links beside the API browse tree
- Share adjacent heading controls and measured fragment clearance
why: Both real glossary layout paths now render their required controls.

what:
- Remove the strict expected-failure markers after source isolation
- Load the shared heading styles in the existing parameter fixture
why: Astro rejects href on an untyped compound selector.

what:
- Use the Happy DOM anchor type without changing runtime assertions
why: Home and End leave package manager and language tabs unchanged.

what:
- Exercise the rendered component and its client script with strict failures.
- Cover focus, saved choices and synchronized widget instances.
- Preserve arrow, other-key and single-tab behavior.
why: The shared tab handler ignored edge keys, leaving NuGet managers
and language choices unchanged.

what:
- Select the first or last tab through the existing focus and sync path.
- Retain arrow wrapping and single-tab and other-key handling.
why: Edge keys now select and focus the first and last tabs.

what: Run the component regressions without expected-failure markers,
including persisted choices and cross-instance synchronization.
Exercise emitted product and hub controls through the responsive
handoff, including native details and the actual drawer lifecycle.
Strict expected failures retain the missing 64rem to 80rem channel.
Keep DocsLayout contents controls and fallback available until the
80rem desktop column replaces them. Navigation retains its 64rem
handoff and reference/native contexts keep their existing cutoff.

Close only an open sidebar at its breakpoint so it cannot release
the scroll lock owned by the contents drawer.
Require one contents entry across the product and hub handoff,
including native details and drawer cleanup at the desktop boundary.
@tony
tony deployed to docs-preview October 17, 2026 02:45 — with GitHub Actions Active
why: Happy DOM's Element result omits HTML drawer properties.

what:
- Use the existing native HTMLElement type at fixture lookups.
- Preserve emitted JavaScript and all runtime checks.
@tony tony changed the title Restore glossary contents and audit generated source links Restore glossary contents, keyboard tabs and source links Oct 17, 2026
@tony
tony deployed to docs-preview October 17, 2026 05:03 — with GitHub Actions Active
@tony
tony marked this pull request as ready for review October 17, 2026 05:08
@tony
tony merged commit fe023db into main Oct 17, 2026
3 checks passed
@tony
tony deployed to docs-preview-cleanup October 17, 2026 05:45 — with GitHub Actions Active

This branch was successfully deployed

2 active deployments
docs-preview-cleanup — 32de9876 Deployed Oct 17, 2026 by tony via cleanup #132
docs-preview — 32de9876 Deployed Oct 17, 2026 by tony via publish-preview / publish #765
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant